Skip to content

fix(clients): restore upstream system font defaults - #203

Open
rynfar wants to merge 1 commit into
pylonfrom
fix/restore-upstream-system-fonts
Open

fix(clients): restore upstream system font defaults#203
rynfar wants to merge 1 commit into
pylonfrom
fix/restore-upstream-system-fonts

Conversation

@rynfar

@rynfar rynfar commented Aug 31, 2026

Copy link
Copy Markdown
Collaborator

Problem

Pylon still preferred bundled DM Sans and JetBrains Mono after the status visuals were restored to current upstream behavior. That kept web and desktop typography visibly different from the platform-native defaults, and left several early-render and annotation fallbacks coupled to font packages we no longer need.

Fix

  • Restore the upstream system UI and monospace stacks across the boot shell, web runtime defaults, Appearance settings, terminal canvas, and desktop annotation overlay.
  • Remove the bundled DM Sans and JetBrains Mono imports, package dependencies, and lockfile entries.
  • Keep the existing per-surface font pickers and custom-font fallback behavior unchanged.
  • Restore synchronous default-family probing now that every default face is platform-provided.

Verification

  • vp test run apps/web/src/appearanceFonts.test.ts apps/web/src/terminal/ghostty/surface.test.ts apps/web/src/components/settings/SettingsPanels.logic.test.ts apps/desktop/src/preview/AnnotationKeyboard.test.ts — 86 tests passed.
  • vp run -F @t3tools/web typecheck — passed.
  • vp run -F @t3tools/desktop typecheck — passed; two pre-existing Effect suggestions only.
  • vp lint ... on the affected TypeScript and generated annotation paths — zero warnings and errors.
  • vp fmt --check ..., vp install --frozen-lockfile --lockfile-only, and git diff --check — passed.
  • Re-ran apps/desktop/scripts/build-preview-annotation-css.mjs; generated output was byte-stable.
  • Isolated browser pass on macOS confirmed SF Pro and Menlo defaults, no bundled interface font faces, matching light/dark behavior, and successful custom-font apply/reset.

Visual evidence

State Default labels Local artifact
Before DM Sans Variable / JetBrains Mono /tmp/pylon-system-fonts-before.png
After SF Pro / Menlo /tmp/pylon-system-fonts-after.png

The before/after screenshots were captured at the same 1280×800 Appearance screen. GitHub user-attachment upload is pending because the available GitHub browser session is not authenticated; no external host or committed PR asset was used.

Generated with GPT-5.6-sol via Prime Agent.

Use the platform UI and monospace stacks throughout web, desktop boot, terminal, and annotation fallbacks. Remove the bundled DM Sans and JetBrains Mono assets while keeping the existing per-surface font controls.
@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:M labels Aug 31, 2026
@github-actions

Copy link
Copy Markdown

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

Provider Metric Main baseline This PR Impact PR ceiling
Codex Total thread wire 13.6 KiB 13.6 KiB +12 B (+0.1%) 15.1 KiB
Codex Thread snapshot wire 6.9 KiB 6.9 KiB −1 B (−0.0%) 7.3 KiB
Codex Live turn WebSocket wire 6.6 KiB 6.6 KiB +13 B (+0.2%) 7.8 KiB
Codex Live turn WebSocket decoded 57.2 KiB 57.2 KiB 0 B (0.0%) 66.4 KiB
Codex Live turn messages 10 10 0 (0.0%) 21
Claude Total thread wire 13.6 KiB 13.6 KiB −4 B (−0.0%) 15.1 KiB
Claude Thread snapshot wire 6.9 KiB 6.9 KiB −7 B (−0.1%) 7.3 KiB
Claude Live turn WebSocket wire 6.6 KiB 6.6 KiB +3 B (+0.0%) 7.8 KiB
Claude Live turn WebSocket decoded 58.1 KiB 58.1 KiB 0 B (0.0%) 66.4 KiB
Claude Live turn messages 10 10 0 (0.0%) 21

Baseline: 9c2a08d · PR result: cd2c14c · Source CI: failure

Scenario and decoded snapshot size

10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.

  • Codex decoded thread snapshot: 109.5 KiB
  • Claude decoded thread snapshot: 110.2 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant